.\"  Copyright 2002 walter harms (walter.harms@informatik.uni-oldenburg.de)
.\"
.\" %%%LICENSE_START(GPL_NOVERSION_ONELINE)
.\" Distributed under GPL
.\" %%%LICENSE_END
.\"  adapted glibc info page
.\"
.\"  polished a little, aeb
.TH ADDSEVERITY 3 2016-03-15 "GNU" "Linux Programmer's Manual"
.SH NAME
addseverity \- introduce new severity classes
.SH SYNOPSIS
.nf
.sp
.B #include <fmtmsg.h>
.sp
.BI "int addseverity(int " severity ", const char *" s );
.fi
.sp
.in -4n
Feature Test Macro Requirements for glibc (see
.BR feature_test_macros (7)):
.in
.sp
.BR addseverity ():
    Since glibc 2.19:
        _DEFAULT_SOURCE
    Glibc 2.19 and earlier:
        _SVID_SOURCE
.SH DESCRIPTION
This function allows the introduction of new severity classes
which can be addressed by the
.I severity
argument of the
.BR fmtmsg (3)
function.
By default, that function knows only how to
print messages for severity 0-4 (with strings (none), HALT,
ERROR, WARNING, INFO).
This call attaches the given string
.I s
to the given value
.IR severity .
If
.I s
is NULL, the severity class with the numeric value
.I severity
is removed.
It is not possible to overwrite or remove one of the default
severity classes.
The severity value must be nonnegative.
.SH RETURN VALUE
Upon success, the value
.B MM_OK
is returned.
Upon error, the return value is
.BR MM_NOTOK .
Possible errors include: out of memory, attempt to remove a
nonexistent or default severity class.
.SH VERSIONS
.BR addseverity ()
is provided in glibc since version 2.1.
.SH ATTRIBUTES
For an explanation of the terms used in this section, see
.BR attributes (7).
.TS
allbox;
lb lb lb
l l l.
Interface	Attribute	Value
T{
.BR addseverity ()
T}	Thread safety	MT-Safe
.TE
.SH CONFORMING TO
This function is not specified in the X/Open Portability Guide
although the
.BR fmtmsg (3)
function is.
It is available on System V
systems.
.SH NOTES
New severity classes can also be added by setting the environment variable
.BR SEV_LEVEL .
.SH SEE ALSO
.BR fmtmsg (3)
